// 使用open write close的形式去创建一个大文件,
// 内容从指定的文本中随机取一些（每次取得长度内容可以不一样）,
// 计算出这个大文件出现最多的字符(要使用流的形式).

var fs = require('fs');
var str = "qwertyuiopasdfghjklzxcvbnm";

let fd = fs.openSync("demo.txt", "a");  //openSync 同步  demo.txt 文件名
for (let j = 0; j < 100; j++) {
    var str11 = sj(Math.ceil(Math.random() * str.length));  //随机数生成
    fs.writeSync(fd, str11)  //追加 将随机数追加到文件夹里
}
fs.closeSync(fd);  // 结束



var rs = fs.createReadStream('demo.txt', 'utf-8')
var max = 0;
var char = "";
var obj = {};
rs.on('data', function (chunk) {
    for (var p = 0; p < chunk.length; p++) {
        if (obj[chunk[p]]) {
            obj[chunk[p]]++
        } else {
            obj[chunk[p]] = 1;
        }
    }
    for (var key in obj) {
        if (max < obj[key]) {
            max = obj[key];
            char = key;
        }
    }
})   //判断每一个出现的次数

rs.on('end',function(){
    console.log(char+"出现了最多次"+max+"次");
});


//num1= 获取多少个
function sj(num1){
    var str1="";
    for(var x=0;x<num1;x++){
        var xiabiao = Math.ceil(Math.random()*str.length)
        str1=str1+str[xiabiao];
    }
    return str1;
}   //随机取多少个数













